Helper methods offload some of a public method's responsibilities.
2. What is the best way to manage your runtime object creatures?
To implement tactics to reduce the amount of memory space your application needs.
3. What's wrong with variants as return types?
Variants require more memory than other types because of the underlying mapping to specific types.
4. What's a good way to help manage memory use?
To track and eliminate unused methods and attributes and to avoid variants.
5. What are the best ways to achieve reuse?
The best ways to achieve reuse are by having well-defined class interfaces in which each interface has only a few, well-encapsulated public methods; by elaborating abstractions from unambiguous terms and concepts in the domain; with uncomplicated class inheritance relationships or delegation; with well-documented use cases that themselves can be reused; and commitment from fellow team members to practice good object-oriented programming.
6. What is an implementation class?
Any class that implements its own interface or the interface of another class is an implementation class.
7. What should you do when you discover design flaws in construction?
Revisit those diagrams and pinpoint applicationwide ramifications of those flaws.
8. What is aggregation?
Aggregation represents a tightly or loosely coupled ownership relationship between an aggregate object and the objects it's aggregating. By ownership, it is meant that the aggregate object owns either the lifetime of an object (composition) or the exclusive use of services (containment) of an object. Aggregation is best defined by the distinction between composition and containment.
9. What responsibility does a composite object have?
A composite object is responsible for creating and destroying the object of which it is composed. In some cases, the composite object specifies that another object be delegated such responsibility, as in the case of object factories and garbage collectors.